<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <title>Mesa Release Notes</title>
  <link rel="stylesheet" type="text/css" href="../mesa.css">
</head>
<body>

<div class="header">
  The Mesa 3D Graphics Library
</div>

<iframe src="../contents.html"></iframe>
<div class="content">

<h1>Mesa 9.0.2 Release Notes / January 22th, 2013</h1>

<p>
Mesa 9.0.2 is a bug fix release which fixes bugs found since the 9.0.1 release.
</p>
<p>
Mesa 9.0 implements the OpenGL 3.1 API, but the version reported by
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
Some drivers don't support all the features required in OpenGL 3.1.  OpenGL
3.1 is <strong>only</strong> available if requested at context creation
because GL_ARB_compatibility is not supported.
</p>

<h2>MD5 checksums</h2>
<pre>
5ae216ca9fecfa349f14ecb83aa3f124  MesaLib-9.0.2.tar.gz
dc45d1192203e418163e0017640e1cfc  MesaLib-9.0.2.tar.bz2
93d40ec77d656dd04b561ba203ffbb91  MesaLib-9.0.2.zip
</pre>

<h2>New features</h2>
<p>None.</p>

<h2>Bug fixes</h2>

<p>This list is likely incomplete.</p>

<ul>
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=22576">Bug 22576</a> - [KMS] mesa demo spectex broken on rv280</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=26809">Bug 26809</a> - KMS/R200: Bad shading in NWN since Mesa rewrite</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=45877">Bug 45877</a> - [bisected regression] Oglc fbo(negative.invalidParams3) Segmentation fault</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=54402">Bug 54402</a> - st_glsl_to_tgsi.cpp:4006:dst_register: Assertion `index &lt; VERT_RESULT_MAX' failed</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=55175">Bug 55175</a> - Memoryleak with glPopAttrib only on Intel GM45</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=56442">Bug 56442</a> - glcpp accepts junk after #else/#elif/#endif tokens</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=56706">Bug 56706</a> - EGL sets error to EGL_SUCCESS when DRI driver fails to create context</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=57622">Bug 57622</a> - Webgl conformance shader-with-non-reserved-words crash.</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=57842">Bug 57842</a> - r200: Culling is broken when rendering to an FBO</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=57984">Bug 57984</a> - r300g: blend sfactor=GL_DST_COLOR fails with FBOs</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=58545">Bug 58545</a> - [llvmpipe] src/gallium/auxiliary/gallivm/lp_bld_tgsi_info.c:75:analyse_src: Assertion `src-&gt;Index &lt; (sizeof(ctx-&gt;imm)/sizeof((ctx-&gt;imm)[0]))' failed.</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=59383">Bug 59383</a> - src/glsl/tests/Makefile.am missing $(top_srcdir)/include</li>

<!-- <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=">Bug </a> - </li> -->
</ul>


<h2>Changes</h2>
<p>The full set of changes can be viewed by using the following GIT command:</p>

<pre>
  git log mesa-9.0.1..mesa-9.0.2
</pre>

<p>Abdiel Janulgue (1):</p>
<ul>
  <li>mesa: Fix a crash in update_texture_state() for external texture type</li>
</ul>

<p>Adam Jackson (4):</p>
<ul>
  <li>glcpp: Fix visibility CFLAGS in automake</li>
  <li>glcpp: Typo fix.</li>
  <li>galahad, noop: Fix visibility CFLAGS in automake</li>
  <li>r300g: Fix visibility CFLAGS in automake</li>
</ul>

<p>Alex Deucher (2):</p>
<ul>
  <li>radeonsi: add some new SI pci ids</li>
  <li>radeonsi: add a new SI pci id</li>
</ul>

<p>Ander Conselvan de Oliveira (2):</p>
<ul>
  <li>egl/wayland: Don't invalidate drawable on swap buffers</li>
  <li>egl/wayland: Dispatch the event queue before get_buffers</li>
  <li>egl/wayland: Destroy the pending buffer callback with the egl surface</li>
</ul>

<p>Andreas Boll (9):</p>
<ul>
  <li>docs: fix release date of 9.0.1</li>
  <li>docs: add news item for 9.0.1 release</li>
  <li>Add .dirstamp to toplevel .gitignore</li>
  <li>build: use git ls-files for adding all Makefile.in into the release tarball</li>
  <li>build: Fix GLES linkage without libglapi</li>
  <li>Revert "r600g: try to fix streamout for the cases where BURST_COUNT &gt; 0"</li>
  <li>mesa: update .cherry-ignore list</li>
  <li>mesa: Bump version to 9.0.2</li>
  <li>docs: Add 9.0.2 release notes</li>
</ul>

<p>Anuj Phogat (2):</p>
<ul>
  <li>mesa: Generate invalid operation in glGenerateMipMap for integer textures</li>
  <li>meta: Remove redundant code in _mesa_meta_GenerateMipmap</li>
</ul>

<p>Ben Skeggs (3):</p>
<ul>
  <li>nvc0: fix missing permanent bo reference on poly cache</li>
  <li>nvc0: point vertex runout at a valid address</li>
  <li>nv50: point vertex runout at a valid address</li>
</ul>

<p>Brian Paul (5):</p>
<ul>
  <li>svga: don't use uninitialized framebuffer state</li>
  <li>st/mesa: replace REALLOC() with realloc()</li>
  <li>st/mesa: free TGSI tokens with ureg_free_tokens()</li>
  <li>util: added pipe_surface_release() function</li>
  <li>gallivm: support more immediates in lp_build_tgsi_info()</li>
</ul>

<p>Bryan Cain (1):</p>
<ul>
  <li>glsl_to_tgsi: set correct register type for array and structure elements</li>
</ul>

<p>Chad Versace (2):</p>
<ul>
  <li>i965: Validate requested GLES context version in brwCreateContext</li>
  <li>egl/dri2: Set error code when dri2CreateContextAttribs fails</li>
</ul>

<p>Chris Fester (1):</p>
<ul>
  <li>util: null-out the node's prev/next pointers in list_del()</li>
</ul>

<p>Christoph Bumiller (5):</p>
<ul>
  <li>nv50/ir/tgsi: fix srcMask for TXP with SHADOW1D</li>
  <li>nvc0: add missing call to map edge flag in push_vbo</li>
  <li>nv50/ir: wrap assertion using typeid in #ifndef NDEBUG</li>
  <li>nouveau: fix undefined behaviour when testing sample_count</li>
  <li>nv50/ir: restore use of long immediate encodings</li>
</ul>

<p>Dave Airlie (5):</p>
<ul>
  <li>r600g: fix lod bias/explicit lod with cube maps.</li>
  <li>glsl_to_tgsi: fix dst register for texturing fetches.</li>
  <li>glsl: fix cut-n-paste error in error handling. (v2)</li>
  <li>glsl: initialise killed_all field.</li>
  <li>glsl: fix uninitialised variable from constructor</li>
</ul>

<p>Eric Anholt (4):</p>
<ul>
  <li>mesa: Fix the core GL genned-name handling for glBindBufferBase()/Range().</li>
  <li>mesa: Fix core GL genned-name handling for glBeginQuery().</li>
  <li>mesa: Fix segfault on reading from a missing color read buffer.</li>
  <li>i965/gen4: Fix memory leak each time compile_gs_prog() is called.</li>
</ul>

<p>Ian Romanick (2):</p>
<ul>
  <li>docs: Add 9.0.1 release md5sums</li>
  <li>glsl: Don't add structure fields to the symbol table</li>
</ul>

<p>Johannes Obermayr (4):</p>
<ul>
  <li>clover: Install CL headers.</li>
  <li>gallium/auxiliary: Add -fno-rtti to CXXFLAGS on LLVM &gt;= 3.2.</li>
  <li>clover: Adapt libclc's INCLUDEDIR and LIBEXECDIR to make use of the new introduced libclc.pc.</li>
  <li>tests: AM_CPPFLAGS must include $(top_srcdir) instead of $(top_builddir).</li>
</ul>

<p>Jonas Ådahl (1):</p>
<ul>
  <li>wayland: Don't cancel a roundtrip when any event is received</li>
</ul>

<p>José Fonseca (1):</p>
<ul>
  <li>llvmpipe: Obey back writemask.</li>
</ul>

<p>Kenneth Graunke (8):</p>
<ul>
  <li>i965/vs: Fix unit mismatch in scratch base_offset parameter.</li>
  <li>i965/vs: Implement register spilling.</li>
  <li>mesa: Don't flatten IF statements by default.</li>
  <li>glcpp: Don't use infinite lookhead for #define differentiation.</li>
  <li>i965/vs: Don't lose the MRF writemask when doing compute-to-MRF.</li>
  <li>i965/vs: Preserve the type when copy propagating into an instruction.</li>
  <li>mesa: Fix glGetVertexAttribI[u]iv now that we have real integer attribs.</li>
  <li>i965: Fix AA Line Distance Mode in 3DSTATE_SF on Ivybridge.</li>
</ul>

<p>Kristian Høgsberg (1):</p>
<ul>
  <li>egl/wayland: Add invalidate back in eglSwapBuffers()</li>
</ul>

<p>Maarten Lankhorst (2):</p>
<ul>
  <li>makefiles: use configured name for -ldrm* where possible</li>
  <li>automake: strip LLVM_CXXFLAGS and LLVM_CPPFLAGS too</li>
</ul>

<p>Marek Olšák (17):</p>
<ul>
  <li>st/mesa: fix integer texture border color for some formats (v2)</li>
  <li>r300g: fix texture border color for sRGB formats</li>
  <li>mesa: bump MAX_VARYING to 32</li>
  <li>draw: fix assertion failure in draw_emit_vertex_attr</li>
  <li>vbo: fix glVertexAttribI* functions</li>
  <li>mesa: add MaxNumLevels to gl_texture_image, remove MaxLog2</li>
  <li>mesa: fix error checking of TexStorage(levels) for array and rect textures</li>
  <li>st/mesa: fix guessing the base level size</li>
  <li>st/mesa: fix computation of last_level during texture creation</li>
  <li>st/mesa: fix computation of last_level in GenerateMipmap</li>
  <li>r600g: fix streamout on RS780 and RS880</li>
  <li>r600g: advertise 32 streamout vec4 outputs</li>
  <li>r600g: fix broken streamout if streamout_begin caused a context flush</li>
  <li>mesa: fix BlitFramebuffer between linear and sRGB formats</li>
  <li>r600g: try to fix streamout for the cases where BURST_COUNT &gt; 0</li>
  <li>r600g: always use a tiled resource as the destination of MSAA resolve</li>
  <li>mesa: add MaxNumLevels to gl_texture_image, remove MaxLog2</li>
</ul>

<p>Mario Kleiner (1):</p>
<ul>
  <li>mesa: Don't glPopAttrib() GL_POINT_SPRITE_COORD_ORIGIN on &lt; OpenGL-2.0</li>
</ul>

<p>Matt Turner (1):</p>
<ul>
  <li>glcpp: Reject garbage after #else and #endif tokens</li>
</ul>

<p>Stefan Dösinger (1):</p>
<ul>
  <li>r300: Don't disable destination read if the src blend factor needs it</li>
</ul>

<p>Tapani Pälli (1):</p>
<ul>
  <li>android: generate matching remap_helper to dispatch table</li>
</ul>

<p>Tom Stellard (1):</p>
<ul>
  <li>r600g: Use LOOP_START_DX10 for loops</li>
</ul>

<p>Vinson Lee (1):</p>
<ul>
  <li>i915: Fix wrong sizeof argument in i915_update_tex_unit.</li>
</ul>

<p>smoki (2):</p>
<ul>
  <li>r200: fix broken tcl lighting</li>
  <li>radeon/r200: Fix tcl culling</li>
</ul>

</div>
</body>
</html>
